home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1995 February: Tool Chest / Dev.CD Feb 95 / Dev.CD Feb 95.toast / Tool Chest / Interfaces / Universal Interfaces 2.0a3 / Universal AIncludes / Script.a < prev    next >
Encoding:
Text File  |  1994-11-11  |  35.0 KB  |  1,082 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        Script.a
  3. ;
  4. ;    Copyright:    © 1984-1994 by Apple Computer, Inc.
  5. ;                All rights reserved.
  6. ;
  7. ;    Version:    Universal Interfaces 2.0a3  ETO #16, MPW prerelease.  Friday, November 11, 1994. 
  8. ;
  9. ;    Bugs?:        If you find a problem with this file, send the file and version
  10. ;                information (from above) and the problem description to:
  11. ;
  12. ;                    Internet:    apple.bugs@applelink.apple.com
  13. ;                    AppleLink:    APPLE.BUGS
  14. ;
  15. ;
  16.  
  17.     IF &TYPE('__SCRIPT__') = 'UNDEFINED' THEN
  18. __SCRIPT__ SET 1
  19.  
  20.  
  21.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  22.     include 'Types.a'
  23.     ENDIF
  24. ;        include 'ConditionalMacros.a'                                ;
  25.  
  26.     IF &TYPE('__QUICKDRAW__') = 'UNDEFINED' THEN
  27.     include 'Quickdraw.a'
  28.     ENDIF
  29. ;        include 'MixedMode.a'                                        ;
  30. ;        include 'QuickdrawText.a'                                    ;
  31.  
  32.     IF &TYPE('__INTLRESOURCES__') = 'UNDEFINED' THEN
  33.     include 'IntlResources.a'
  34.     ENDIF
  35.  
  36.     IF &TYPE('__EVENTS__') = 'UNDEFINED' THEN
  37.     include 'Events.a'
  38.     ENDIF
  39. ;        include 'OSUtils.a'                                        ;
  40. ;            include 'Memory.a'                                        ;
  41.  
  42. ; Script System constants 
  43. smSystemScript                    EQU        -1                    ;designates system script.
  44. smCurrentScript                    EQU        -2                    ;designates current font script.
  45. smAllScripts                    EQU        -3                    ;designates any script    
  46. smRoman                            EQU        0                    ;Roman
  47. smJapanese                        EQU        1                    ;Japanese
  48. smTradChinese                    EQU        2                    ;Traditional Chinese
  49. smKorean                        EQU        3                    ;Korean
  50. smArabic                        EQU        4                    ;Arabic
  51. smHebrew                        EQU        5                    ;Hebrew
  52. smGreek                            EQU        6                    ;Greek
  53. smCyrillic                        EQU        7                    ;Cyrillic
  54. smRSymbol                        EQU        8                    ;Right-left symbol
  55. smDevanagari                    EQU        9                    ;Devanagari
  56. smGurmukhi                        EQU        10                    ;Gurmukhi
  57. smGujarati                        EQU        11                    ;Gujarati
  58. smOriya                            EQU        12                    ;Oriya
  59. smBengali                        EQU        13                    ;Bengali
  60. smTamil                            EQU        14                    ;Tamil
  61. smTelugu                        EQU        15                    ;Telugu
  62. smKannada                        EQU        16                    ;Kannada/Kanarese
  63. smMalayalam                        EQU        17                    ;Malayalam
  64.  
  65. smSinhalese                        EQU        18                    ;Sinhalese
  66. smBurmese                        EQU        19                    ;Burmese
  67. smKhmer                            EQU        20                    ;Khmer/Cambodian
  68. smThai                            EQU        21                    ;Thai
  69. smLaotian                        EQU        22                    ;Laotian
  70. smGeorgian                        EQU        23                    ;Georgian
  71. smArmenian                        EQU        24                    ;Armenian
  72. smSimpChinese                    EQU        25                    ;Simplified Chinese
  73. smTibetan                        EQU        26                    ;Tibetan
  74. smMongolian                        EQU        27                    ;Mongolian
  75. smGeez                            EQU        28                    ;Geez/Ethiopic
  76. smEthiopic                        EQU        28                    ;Synonym for smGeez
  77. smEastEurRoman                    EQU        29                    ;Synonym for smSlavic
  78. smVietnamese                    EQU        30                    ;Vietnamese
  79. smExtArabic                        EQU        31                    ;extended Arabic
  80. smUninterp                        EQU        32                    ;uninterpreted symbols, e.g. palette symbols
  81. smKlingon                        EQU        32                    ;Klingon
  82. ;Obsolete names for script systems (kept for backward compatibility)
  83. smChinese                        EQU        2                    ;(use smTradChinese or smSimpChinese)
  84. smRussian                        EQU        7                    ;(old name for smCyrillic)
  85. ; smMaldivian = 25;         (no more smMaldivian!)
  86. smAmharic                        EQU        28                    ;(old name for smGeez)
  87. smSlavic                        EQU        29                    ;(old name for smEastEurRoman)
  88.  
  89. smSindhi                        EQU        31                    ;(old name for smExtArabic)
  90. ; Language Codes 
  91. langEnglish                        EQU        0                    ; smRoman script 
  92. langFrench                        EQU        1                    ; smRoman script 
  93. langGerman                        EQU        2                    ; smRoman script 
  94. langItalian                        EQU        3                    ; smRoman script 
  95. langDutch                        EQU        4                    ; smRoman script 
  96. langSwedish                        EQU        5                    ; smRoman script 
  97. langSpanish                        EQU        6                    ; smRoman script 
  98. langDanish                        EQU        7                    ; smRoman script 
  99. langPortuguese                    EQU        8                    ; smRoman script 
  100. langNorwegian                    EQU        9                    ; smRoman script 
  101. langHebrew                        EQU        10                    ; smHebrew script 
  102. langJapanese                    EQU        11                    ; smJapanese script 
  103. langArabic                        EQU        12                    ; smArabic script 
  104. langFinnish                        EQU        13                    ; smRoman script 
  105. langGreek                        EQU        14                    ; smGreek script 
  106. langIcelandic                    EQU        15                    ; extended Roman script 
  107. langMaltese                        EQU        16                    ; extended Roman script 
  108. langTurkish                        EQU        17                    ; extended Roman script 
  109. langCroatian                    EQU        18                    ; Serbo-Croatian in extended Roman script 
  110. langTradChinese                    EQU        19                    ; Chinese in traditional characters 
  111.  
  112. langUrdu                        EQU        20                    ; smArabic script 
  113. langHindi                        EQU        21                    ; smDevanagari script 
  114. langThai                        EQU        22                    ; smThai script 
  115. langKorean                        EQU        23                    ; smKorean script 
  116. langLithuanian                    EQU        24                    ; smEastEurRoman script 
  117. langPolish                        EQU        25                    ; smEastEurRoman script 
  118. langHungarian                    EQU        26                    ; smEastEurRoman script 
  119. langEstonian                    EQU        27                    ; smEastEurRoman script 
  120. langLettish                        EQU        28                    ; smEastEurRoman script 
  121. langLatvian                        EQU        28                    ; Synonym for langLettish 
  122. langSaamisk                        EQU        29                    ; ext. Roman script, lang. of the Sami/Lapp people of Scand. 
  123. langLappish                        EQU        29                    ; Synonym for langSaamisk 
  124. langFaeroese                    EQU        30                    ; smRoman script 
  125. langFarsi                        EQU        31                    ; smArabic script 
  126. langPersian                        EQU        31                    ; Synonym for langFarsi 
  127. langRussian                        EQU        32                    ; smCyrillic script 
  128. langSimpChinese                    EQU        33                    ; Chinese in simplified characters 
  129. langFlemish                        EQU        34                    ; smRoman script 
  130. langIrish                        EQU        35                    ; smRoman script 
  131. langAlbanian                    EQU        36                    ; smRoman script 
  132.  
  133. langRomanian                    EQU        37                    ; smEastEurRoman script 
  134. langCzech                        EQU        38                    ; smEastEurRoman script 
  135. langSlovak                        EQU        39                    ; smEastEurRoman script 
  136. langSlovenian                    EQU        40                    ; smEastEurRoman script 
  137. langYiddish                        EQU        41                    ; smHebrew script 
  138. langSerbian                        EQU        42                    ; Serbo-Croatian in smCyrillic script 
  139. langMacedonian                    EQU        43                    ; smCyrillic script 
  140. langBulgarian                    EQU        44                    ; smCyrillic script 
  141. langUkrainian                    EQU        45                    ; smCyrillic script 
  142. langByelorussian                EQU        46                    ; smCyrillic script 
  143. langUzbek                        EQU        47                    ; smCyrillic script 
  144. langKazakh                        EQU        48                    ; smCyrillic script 
  145. langAzerbaijani                    EQU        49                    ; Azerbaijani in smCyrillic script (USSR) 
  146. langAzerbaijanAr                EQU        50                    ; Azerbaijani in smArabic script (Iran) 
  147. langArmenian                    EQU        51                    ; smArmenian script 
  148. langGeorgian                    EQU        52                    ; smGeorgian script 
  149. langMoldavian                    EQU        53                    ; smCyrillic script 
  150. langKirghiz                        EQU        54                    ; smCyrillic script 
  151. langTajiki                        EQU        55                    ; smCyrillic script 
  152. langTurkmen                        EQU        56                    ; smCyrillic script 
  153.  
  154. langMongolian                    EQU        57                    ; Mongolian in smMongolian script 
  155. langMongolianCyr                EQU        58                    ; Mongolian in smCyrillic script 
  156. langPashto                        EQU        59                    ; smArabic script 
  157. langKurdish                        EQU        60                    ; smArabic script 
  158. langKashmiri                    EQU        61                    ; smArabic script 
  159. langSindhi                        EQU        62                    ; smExtArabic script 
  160. langTibetan                        EQU        63                    ; smTibetan script 
  161. langNepali                        EQU        64                    ; smDevanagari script 
  162. langSanskrit                    EQU        65                    ; smDevanagari script 
  163. langMarathi                        EQU        66                    ; smDevanagari script 
  164. langBengali                        EQU        67                    ; smBengali script 
  165. langAssamese                    EQU        68                    ; smBengali script 
  166. langGujarati                    EQU        69                    ; smGujarati script 
  167. langPunjabi                        EQU        70                    ; smGurmukhi script 
  168. langOriya                        EQU        71                    ; smOriya script 
  169. langMalayalam                    EQU        72                    ; smMalayalam script 
  170. langKannada                        EQU        73                    ; smKannada script 
  171. langTamil                        EQU        74                    ; smTamil script 
  172. langTelugu                        EQU        75                    ; smTelugu script 
  173. langSinhalese                    EQU        76                    ; smSinhalese script 
  174.  
  175. langBurmese                        EQU        77                    ; smBurmese script 
  176. langKhmer                        EQU        78                    ; smKhmer script 
  177. langLao                            EQU        79                    ; smLaotian script 
  178. langVietnamese                    EQU        80                    ; smVietnamese script 
  179. langIndonesian                    EQU        81                    ; smRoman script 
  180. langTagalog                        EQU        82                    ; smRoman script 
  181. langMalayRoman                    EQU        83                    ; Malay in smRoman script 
  182. langMalayArabic                    EQU        84                    ; Malay in smArabic script 
  183. langAmharic                        EQU        85                    ; smEthiopic script 
  184. langTigrinya                    EQU        86                    ; smEthiopic script 
  185. langGalla                        EQU        87                    ; smEthiopic script 
  186. langOromo                        EQU        87                    ; Synonym for langGalla 
  187. langSomali                        EQU        88                    ; smRoman script 
  188. langSwahili                        EQU        89                    ; smRoman script 
  189. langRuanda                        EQU        90                    ; smRoman script 
  190. langRundi                        EQU        91                    ; smRoman script 
  191. langChewa                        EQU        92                    ; smRoman script 
  192. langMalagasy                    EQU        93                    ; smRoman script 
  193. langEsperanto                    EQU        94                    ; extended Roman script 
  194. langWelsh                        EQU        128                    ; smRoman script 
  195.  
  196. langBasque                        EQU        129                    ; smRoman script 
  197. langCatalan                        EQU        130                    ; smRoman script 
  198. langLatin                        EQU        131                    ; smRoman script 
  199. langQuechua                        EQU        132                    ; smRoman script 
  200. langGuarani                        EQU        133                    ; smRoman script 
  201. langAymara                        EQU        134                    ; smRoman script 
  202. langTatar                        EQU        135                    ; smCyrillic script 
  203. langUighur                        EQU        136                    ; smArabic script 
  204. langDzongkha                    EQU        137                    ; (lang of Bhutan) smTibetan script 
  205. langJavaneseRom                    EQU        138                    ; Javanese in smRoman script 
  206. langSundaneseRom                EQU        139                    ; Sundanese in smRoman script 
  207. ; Obsolete names, kept for backward compatibility 
  208. langPortugese                    EQU        8                    ; old misspelled version, kept for compatibility 
  209. langMalta                        EQU        16                    ; old misspelled version, kept for compatibility 
  210. langYugoslavian                    EQU        18                    ; (use langCroatian, langSerbian, etc.) 
  211. langChinese                        EQU        19                    ; (use langTradChinese or langSimpChinese) 
  212. langLapponian                    EQU        29                    ; Synonym for langSaamisk, not correct name 
  213.  
  214. ; Regional version codes 
  215. verUS                            EQU        0
  216. verFrance                        EQU        1
  217. verBritain                        EQU        2
  218. verGermany                        EQU        3
  219. verItaly                        EQU        4
  220. verNetherlands                    EQU        5
  221. verFrBelgiumLux                    EQU        6                    ; French for Belgium & Luxembourg 
  222. verSweden                        EQU        7
  223. verSpain                        EQU        8
  224. verDenmark                        EQU        9
  225. verPortugal                        EQU        10
  226. verFrCanada                        EQU        11
  227. verNorway                        EQU        12
  228.  
  229. verIsrael                        EQU        13
  230. verJapan                        EQU        14
  231. verAustralia                    EQU        15
  232. verArabic                        EQU        16                    ; synonym for verArabia 
  233. verFinland                        EQU        17
  234. verFrSwiss                        EQU        18                    ; French Swiss 
  235. verGrSwiss                        EQU        19                    ; German Swiss 
  236. verGreece                        EQU        20
  237. verIceland                        EQU        21
  238. verMalta                        EQU        22
  239. verCyprus                        EQU        23
  240. verTurkey                        EQU        24
  241. verYugoCroatian                    EQU        25                    ; Croatian system for Yugoslavia 
  242. verNetherlandsComma                EQU        26
  243. verBelgiumLuxPoint                EQU        27
  244. verCanadaComma                    EQU        28
  245. verCanadaPoint                    EQU        29
  246. vervariantPortugal                EQU        30
  247. vervariantNorway                EQU        31
  248. vervariantDenmark                EQU        32
  249. verIndiaHindi                    EQU        33                    ; Hindi system for India 
  250. verPakistan                        EQU        34
  251. verTurkishModified                EQU        35
  252. verGreekAncient                    EQU        40
  253. verLithuania                    EQU        41
  254. verPoland                        EQU        42
  255. verHungary                        EQU        43
  256. verEstonia                        EQU        44
  257. verLatvia                        EQU        45
  258.  
  259. verLapland                        EQU        46
  260. verFaeroeIsl                    EQU        47
  261. verIran                            EQU        48
  262. verRussia                        EQU        49
  263. verIreland                        EQU        50                    ; English-language version for Ireland 
  264. verKorea                        EQU        51
  265. verChina                        EQU        52
  266. verTaiwan                        EQU        53
  267. verThailand                        EQU        54
  268. verCzech                        EQU        56
  269. verSlovak                        EQU        57
  270. verGenericFE                    EQU        58
  271. verMagyar                        EQU        59
  272. verBengali                        EQU        60
  273. verByeloRussian                    EQU        61
  274. verUkrania                        EQU        62
  275. verItalianSwiss                    EQU        63
  276. verAlternateGr                    EQU        64
  277.  
  278. minCountry                        EQU        verUS
  279. maxCountry                        EQU        verAlternateGr        ; changed from verThailand when additional enums added 
  280.  
  281. ; Obsolete region code names, kept for backward compatibility 
  282. verBelgiumLux                    EQU        6                    ; (use verFrBelgiumLux instead, less ambiguous) 
  283. verArabia                        EQU        16
  284. verYugoslavia                    EQU        25                    ; (use verYugoCroatian instead, less ambiguous) 
  285. verIndia                        EQU        33                    ; (use verIndiaHindi instead, less ambiguous) 
  286. ; Calendar Codes 
  287. calGregorian                    EQU        0
  288. calArabicCivil                    EQU        1
  289. calArabicLunar                    EQU        2
  290. calJapanese                        EQU        3
  291. calJewish                        EQU        4
  292. calCoptic                        EQU        5
  293. calPersian                        EQU        6
  294. ; Integer Format Codes 
  295. intWestern                        EQU        0
  296. intArabic                        EQU        1
  297. intRoman                        EQU        2
  298. intJapanese                        EQU        3
  299. intEuropean                        EQU        4
  300. intOutputMask                    EQU        $8000
  301. ; CharByte byte types 
  302. smSingleByte                    EQU        0
  303. smFirstByte                        EQU        -1
  304. smLastByte                        EQU        1
  305. smMiddleByte                    EQU        2
  306. ; CharType field masks 
  307. smcTypeMask                        EQU        $000F
  308. smcReserved                        EQU        $00F0
  309.  
  310. smcClassMask                    EQU        $0F00
  311. smcOrientationMask                EQU        $1000                ;two-byte script glyph orientation
  312. smcRightMask                    EQU        $2000
  313. smcUpperMask                    EQU        $4000
  314. smcDoubleMask                    EQU        $8000
  315. ; Basic CharType character types 
  316. smCharPunct                        EQU        $0000
  317. smCharAscii                        EQU        $0001
  318. smCharEuro                        EQU        $0007
  319. smCharExtAscii                    EQU        $0007                ; More correct synonym for smCharEuro 
  320. ; Additional CharType character types for script systems 
  321. smCharKatakana                    EQU        $0002                ;Japanese Katakana
  322. smCharHiragana                    EQU        $0003                ;Japanese Hiragana
  323. smCharIdeographic                EQU        $0004                ;Hanzi, Kanji, Hanja
  324. smCharTwoByteGreek                EQU        $0005                ;2-byte Greek in Far East systems
  325. smCharTwoByteRussian            EQU        $0006                ;2-byte Cyrillic in Far East systems
  326. smCharBidirect                    EQU        $0008                ;Arabic/Hebrew
  327. smCharContextualLR                EQU        $0009                ;Contextual left-right: Thai, Indic scripts
  328. smCharNonContextualLR            EQU        $000A                ;Non-contextual left-right: Cyrillic, Greek
  329. smCharHangul                    EQU        $000C                ;Korean Hangul
  330. smCharJamo                        EQU        $000D                ;Korean Jamo
  331. smCharBopomofo                    EQU        $000E                ;Chinese Bopomofo
  332. ; old names for some of above, for backward compatibility 
  333. smCharFISKana                    EQU        $0002                ;Katakana
  334. smCharFISGana                    EQU        $0003                ;Hiragana
  335. smCharFISIdeo                    EQU        $0004                ;Hanzi, Kanji, Hanja
  336.  
  337. smCharFISGreek                    EQU        $0005                ;2-byte Greek in Far East systems
  338. smCharFISRussian                EQU        $0006                ;2-byte Cyrillic in Far East systems
  339. ; CharType classes for punctuation (smCharPunct) 
  340. smPunctNormal                    EQU        $0000
  341. smPunctNumber                    EQU        $0100
  342. smPunctSymbol                    EQU        $0200
  343. smPunctBlank                    EQU        $0300
  344. ; Additional CharType classes for punctuation in two-byte systems 
  345. smPunctRepeat                    EQU        $0400                ; repeat marker 
  346. smPunctGraphic                    EQU        $0500                ; line graphics 
  347. ; CharType Katakana and Hiragana classes for two-byte systems 
  348. smKanaSmall                        EQU        $0100                ;small kana character
  349. smKanaHardOK                    EQU        $0200                ;can have dakuten
  350. smKanaSoftOK                    EQU        $0300                ;can have dakuten or han-dakuten
  351. ; CharType Ideographic classes for two-byte systems 
  352. smIdeographicLevel1                EQU        $0000                ;level 1 char
  353. smIdeographicLevel2                EQU        $0100                ;level 2 char
  354. smIdeographicUser                EQU        $0200                ;user char
  355. ; old names for above, for backward compatibility 
  356. smFISClassLvl1                    EQU        $0000                ;level 1 char
  357. smFISClassLvl2                    EQU        $0100                ;level 2 char
  358. smFISClassUser                    EQU        $0200                ;user char
  359. ; CharType Jamo classes for Korean systems 
  360. smJamoJaeum                        EQU        $0000                ;simple consonant char
  361. smJamoBogJaeum                    EQU        $0100                ;complex consonant char
  362. smJamoMoeum                        EQU        $0200                ;simple vowel char
  363.  
  364. smJamoBogMoeum                    EQU        $0300                ;complex vowel char
  365. ; CharType glyph orientation for two-byte systems 
  366. smCharHorizontal                EQU        $0000                ; horizontal character form, or for both 
  367. smCharVertical                    EQU        $1000                ; vertical character form 
  368. ; CharType directions 
  369. smCharLeft                        EQU        $0000
  370. smCharRight                        EQU        $2000
  371. ; CharType case modifers 
  372. smCharLower                        EQU        $0000
  373. smCharUpper                        EQU        $4000
  374. ; CharType character size modifiers (1 or multiple bytes). 
  375. smChar1byte                        EQU        $0000
  376. smChar2byte                        EQU        $8000
  377. ; TransliterateText target types for Roman 
  378. smTransAscii                    EQU        0                    ;convert to ASCII
  379. smTransNative                    EQU        1                    ;convert to font script
  380. smTransCase                        EQU        $FE                    ;convert case for all text
  381. smTransSystem                    EQU        $FF                    ;convert to system script
  382. ; TransliterateText target types for two-byte scripts 
  383. smTransAscii1                    EQU        2                    ;1-byte Roman
  384. smTransAscii2                    EQU        3                    ;2-byte Roman
  385. smTransKana1                    EQU        4                    ;1-byte Japanese Katakana
  386. smTransKana2                    EQU        5                    ;2-byte Japanese Katakana
  387.  
  388. smTransGana2                    EQU        7                    ;2-byte Japanese Hiragana (no 1-byte Hiragana)
  389. smTransHangul2                    EQU        8                    ;2-byte Korean Hangul
  390. smTransJamo2                    EQU        9                    ;2-byte Korean Jamo
  391. smTransBopomofo2                EQU        10                    ;2-byte Chinese Bopomofo
  392. ; TransliterateText target modifiers 
  393. smTransLower                    EQU        $4000                ;target becomes lowercase
  394. smTransUpper                    EQU        $8000                ;target becomes uppercase
  395. ; TransliterateText resource format numbers 
  396. smTransRuleBaseFormat            EQU        1                    ;Rule based trsl resource format 
  397. smTransHangulFormat                EQU        2                    ;Table based Hangul trsl resource format
  398. ; TransliterateText property flags 
  399. smTransPreDoubleByting            EQU        1                    ;Convert all text to double byte before transliteration
  400. smTransPreLowerCasing            EQU        2                    ;Convert all text to lower case before transliteration
  401. ; TransliterateText source mask - general 
  402. smMaskAll                        EQU        $FFFFFFFF            ;Convert all text
  403. ; TransliterateText source masks 
  404. smMaskAscii                        EQU        $00000001            ;2^smTransAscii
  405. smMaskNative                    EQU        $00000002            ;2^smTransNative
  406. ; TransliterateText source masks for two-byte scripts 
  407. smMaskAscii1                    EQU        $00000004            ;2^smTransAscii1
  408. smMaskAscii2                    EQU        $00000008            ;2^smTransAscii2
  409. smMaskKana1                        EQU        $00000010            ;2^smTransKana1
  410. smMaskKana2                        EQU        $00000020            ;2^smTransKana2
  411. smMaskGana2                        EQU        $00000080            ;2^smTransGana2
  412. smMaskHangul2                    EQU        $00000100            ;2^smTransHangul2
  413. smMaskJamo2                        EQU        $00000200            ;2^smTransJamo2
  414. smMaskBopomofo2                    EQU        $00000400            ;2^smTransBopomofo2
  415.  
  416. ; Result values from GetScriptManagerVariable and SetScriptManagerVariable calls. 
  417. smNotInstalled                    EQU        0                    ;routine not available in script
  418. smBadVerb                        EQU        -1                    ;Bad verb passed to a routine
  419. smBadScript                        EQU        -2                    ;Bad script code passed to a routine
  420.  
  421. ; Values for script redraw flag. 
  422. smRedrawChar                    EQU        0                    ;Redraw character only
  423. smRedrawWord                    EQU        1                    ;Redraw entire word (2-byte systems)
  424. smRedrawLine                    EQU        -1                    ;Redraw entire line (bidirectional systems)
  425. ; GetScriptManagerVariable and SetScriptManagerVariable verbs 
  426. smVersion                        EQU        0                    ;Script Manager version number
  427. smMunged                        EQU        2                    ;Globals change count
  428. smEnabled                        EQU        4                    ;Count of enabled scripts, incl Roman
  429. smBidirect                        EQU        6                    ;At least one bidirectional script
  430. smFontForce                        EQU        8                    ;Force font flag
  431. smIntlForce                        EQU        10                    ;Force intl flag
  432. smForced                        EQU        12                    ;Script was forced to system script
  433. smDefault                        EQU        14                    ;Script was defaulted to Roman script
  434. smPrint                            EQU        16                    ;Printer action routine
  435. smSysScript                        EQU        18                    ;System script
  436. smLastScript                    EQU        20                    ;Last keyboard script
  437. smKeyScript                        EQU        22                    ;Keyboard script
  438. smSysRef                        EQU        24                    ;System folder refNum
  439. smKeyCache                        EQU        26                    ;obsolete
  440. smKeySwap                        EQU        28                    ;Swapping table handle
  441. smGenFlags                        EQU        30                    ;General flags long
  442. smOverride                        EQU        32                    ;Script override flags
  443.  
  444. smCharPortion                    EQU        34                    ;Ch vs SpExtra proportion
  445. ; New for System 7.0: 
  446. smDoubleByte                    EQU        36                    ;Flag for double-byte script installed
  447. smKCHRCache                        EQU        38                    ;Returns pointer to KCHR cache
  448. smRegionCode                    EQU        40                    ;Returns current region code (verXxx)
  449. smKeyDisableState                EQU        42                    ;Returns current keyboard disable state
  450. ; GetScriptVariable and SetScriptVariable verbs.
  451. ;Note: Verbs private to script systems are negative, while
  452. ;those general across script systems are non-negative. 
  453. smScriptVersion                    EQU        0                    ;Script software version
  454. smScriptMunged                    EQU        2                    ;Script entry changed count
  455. smScriptEnabled                    EQU        4                    ;Script enabled flag
  456. smScriptRight                    EQU        6                    ;Right to left flag
  457. smScriptJust                    EQU        8                    ;Justification flag
  458. smScriptRedraw                    EQU        10                    ;Word redraw flag
  459. smScriptSysFond                    EQU        12                    ;Preferred system font
  460. smScriptAppFond                    EQU        14                    ;Preferred Application font
  461. smScriptBundle                    EQU        16                    ;Beginning of itlb verbs
  462. smScriptNumber                    EQU        16                    ;Script itl0 id
  463. smScriptDate                    EQU        18                    ;Script itl1 id
  464. smScriptSort                    EQU        20                    ;Script itl2 id
  465. smScriptFlags                    EQU        22                    ;flags word
  466. smScriptToken                    EQU        24                    ;Script itl4 id
  467. smScriptEncoding                EQU        26                    ;id of optional itl5, if present
  468. smScriptLang                    EQU        28                    ;Current language for script
  469.  
  470. smScriptNumDate                    EQU        30                    ;Script Number/Date formats.
  471. smScriptKeys                    EQU        32                    ;Script KCHR id
  472. smScriptIcon                    EQU        34                    ;ID # of SICN or kcs#/kcs4/kcs8 suite
  473. smScriptPrint                    EQU        36                    ;Script printer action routine
  474. smScriptTrap                    EQU        38                    ;Trap entry pointer
  475. smScriptCreator                    EQU        40                    ;Script file creator
  476. smScriptFile                    EQU        42                    ;Script file name
  477. smScriptName                    EQU        44                    ;Script name
  478. ; There is a hole here for old Kanji private verbs 46-76 
  479. ;
  480. ; New for System 7.0: 
  481. smScriptMonoFondSize            EQU        78                    ;default monospace FOND (hi) & size (lo)
  482. smScriptPrefFondSize            EQU        80                    ;preferred FOND (hi) & size (lo)
  483. smScriptSmallFondSize            EQU        82                    ;default small FOND (hi) & size (lo)
  484. smScriptSysFondSize                EQU        84                    ;default system FOND (hi) & size (lo)
  485. smScriptAppFondSize                EQU        86                    ;default app FOND (hi) & size (lo)
  486. smScriptHelpFondSize            EQU        88                    ;default Help Mgr FOND (hi) & size (lo)
  487. smScriptValidStyles                EQU        90                    ;mask of valid styles for script
  488. smScriptAliasStyle                EQU        92                    ;style (set) to use for aliases
  489. ; Special script code values for International Utilities 
  490. iuSystemScript                    EQU        -1                    ; <obsolete>  system script 
  491. iuCurrentScript                    EQU        -2                    ; <obsolete>  current script (for font of grafPort) 
  492. ; Negative verbs for KeyScript 
  493. smKeyNextScript                    EQU        -1                    ; Switch to next available script 
  494. smKeySysScript                    EQU        -2                    ; Switch to the system script 
  495. smKeySwapScript                    EQU        -3                    ; Switch to previously-used script 
  496. ; New for System 7.0: 
  497. smKeyNextKybd                    EQU        -4                    ; Switch to next keyboard in current keyscript 
  498.  
  499. smKeySwapKybd                    EQU        -5                    ; Switch to previously-used keyboard in current keyscript 
  500. smKeyDisableKybds                EQU        -6                    ; Disable keyboards not in system or Roman script 
  501. smKeyEnableKybds                EQU        -7                    ; Re-enable keyboards for all enabled scripts 
  502. smKeyToggleInline                EQU        -8                    ; Toggle inline input for current keyscript 
  503. smKeyToggleDirection            EQU        -9                    ; Toggle default line direction (TESysJust) 
  504. smKeyNextInputMethod            EQU        -10                    ; Switch to next input method in current keyscript 
  505. smKeySwapInputMethod            EQU        -11                    ; Switch to last-used input method in current keyscript 
  506. smKeyDisableKybdSwitch            EQU        -12                    ; Disable switching from the current keyboard 
  507. smKeySetDirLeftRight            EQU        -15                    ; Set default line dir to left-right, align left 
  508. smKeySetDirRightLeft            EQU        -16                    ; Set default line dir to right-left, align right 
  509. smKeyRoman                        EQU        -17                    ; Set keyscript to Roman. Does nothing if Roman-only
  510. ;                                        system, unlike KeyScript(smRoman) which forces
  511. ;                                        an update to current default Roman keyboard 
  512. ; Bits in the smScriptFlags word
  513. ;(bits above 8 are non-static) 
  514. smsfIntellCP                    EQU        0                    ;Script has intelligent cut & paste
  515. smsfSingByte                    EQU        1                    ;Script has only single bytes
  516. smsfNatCase                        EQU        2                    ;Native chars have upper & lower case
  517. smsfContext                        EQU        3                    ;Script is contextual
  518. smsfNoForceFont                    EQU        4                    ;Script will not force characters
  519. smsfB0Digits                    EQU        5                    ;Script has alternate digits at B0-B9
  520. smsfAutoInit                    EQU        6                    ;Auto initialize the script
  521. smsfUnivExt                        EQU        7                    ;Script is handled by universal extension
  522. smsfSynchUnstyledTE                EQU        8                    ;Script synchronizes for unstyled TE
  523. smsfForms                        EQU        13                    ;Uses contextual forms for letters
  524. smsfLigatures                    EQU        14                    ;Uses contextual ligatures
  525. smsfReverse                        EQU        15                    ;Reverses native text, right-left
  526. ; Bits in the smGenFlags long.
  527. ;First (high-order) byte is set from itlc flags byte. 
  528. smfShowIcon                        EQU        31                    ;Show icon even if only one script
  529. smfDualCaret                    EQU        30                    ;Use dual caret for mixed direction text
  530. smfNameTagEnab                    EQU        29                    ;Reserved for internal use
  531. smfUseAssocFontInfo                EQU        28                    ;Use the associated font info for FontMetrics calls <48>
  532.  
  533. ; Roman script constants 
  534. ; The following are here for backward compatibility, but should not be used. 
  535. ; This information should be obtained using GetScript. 
  536. romanSysFond                    EQU        $3FFF                ;system font id number
  537. romanAppFond                    EQU        3                    ;application font id number
  538. romanFlags                        EQU        $0007                ;roman settings
  539. ; Script Manager font equates. 
  540. smFondStart                        EQU        $4000                ;start from 16K
  541. smFondEnd                        EQU        $C000                ;past end of range at 48K
  542. ; Miscellaneous font equates. 
  543. smUprHalfCharSet                EQU        $80                    ;first char code in top half of std char set
  544. ; Character Set Extensions 
  545. diaeresisUprY                    EQU        $D9
  546. fraction                        EQU        $DA
  547. intlCurrency                    EQU        $DB
  548. leftSingGuillemet                EQU        $DC
  549. rightSingGuillemet                EQU        $DD
  550. fiLigature                        EQU        $DE
  551. flLigature                        EQU        $DF
  552. dblDagger                        EQU        $E0
  553. centeredDot                        EQU        $E1
  554. baseSingQuote                    EQU        $E2
  555. baseDblQuote                    EQU        $E3
  556. perThousand                        EQU        $E4
  557. circumflexUprA                    EQU        $E5
  558.  
  559. circumflexUprE                    EQU        $E6
  560. acuteUprA                        EQU        $E7
  561. diaeresisUprE                    EQU        $E8
  562. graveUprE                        EQU        $E9
  563. acuteUprI                        EQU        $EA
  564. circumflexUprI                    EQU        $EB
  565. diaeresisUprI                    EQU        $EC
  566. graveUprI                        EQU        $ED
  567. acuteUprO                        EQU        $EE
  568. circumflexUprO                    EQU        $EF
  569. appleLogo                        EQU        $F0
  570. graveUprO                        EQU        $F1
  571. acuteUprU                        EQU        $F2
  572. circumflexUprU                    EQU        $F3
  573. graveUprU                        EQU        $F4
  574. dotlessLwrI                        EQU        $F5
  575. circumflex                        EQU        $F6
  576. tilde                            EQU        $F7
  577. macron                            EQU        $F8
  578. breveMark                        EQU        $F9
  579.  
  580. overDot                            EQU        $FA
  581. ringMark                        EQU        $FB
  582. cedilla                            EQU        $FC
  583. doubleAcute                        EQU        $FD
  584. ogonek                            EQU        $FE
  585. hachek                            EQU        $FF
  586. ; TokenType values 
  587. tokenIntl                        EQU        4                    ;the itl resource number of the tokenizer
  588. tokenEmpty                        EQU        -1                    ;used internally as an empty flag
  589.  
  590. tokenUnknown                    EQU        0                    ;chars that do not match a defined token type
  591. tokenWhite                        EQU        1                    ;white space
  592. tokenLeftLit                    EQU        2                    ;literal begin
  593. tokenRightLit                    EQU        3                    ;literal end
  594. tokenAlpha                        EQU        4                    ;alphabetic
  595. tokenNumeric                    EQU        5                    ;numeric
  596. tokenNewLine                    EQU        6                    ;new line
  597. tokenLeftComment                EQU        7                    ;open comment
  598. tokenRightComment                EQU        8                    ;close comment
  599. tokenLiteral                    EQU        9                    ;literal
  600. tokenEscape                        EQU        10                    ;character escape (e.g. '\' in "\n", "\t")
  601. tokenAltNum                        EQU        11                    ;alternate number (e.g. $B0-B9 in Arabic,Hebrew)
  602. tokenRealNum                    EQU        12                    ;real number
  603. tokenAltReal                    EQU        13                    ;alternate real number
  604. tokenReserve1                    EQU        14                    ;reserved
  605. tokenReserve2                    EQU        15                    ;reserved
  606. tokenLeftParen                    EQU        16                    ;open parenthesis
  607. tokenRightParen                    EQU        17                    ;close parenthesis
  608. tokenLeftBracket                EQU        18                    ;open square bracket
  609. tokenRightBracket                EQU        19                    ;close square bracket
  610.  
  611. tokenLeftCurly                    EQU        20                    ;open curly bracket
  612. tokenRightCurly                    EQU        21                    ;close curly bracket
  613. tokenLeftEnclose                EQU        22                    ;open guillemet
  614. tokenRightEnclose                EQU        23                    ;close guillemet
  615. tokenPlus                        EQU        24
  616. tokenMinus                        EQU        25
  617. tokenAsterisk                    EQU        26                    ;times/multiply
  618. tokenDivide                        EQU        27
  619. tokenPlusMinus                    EQU        28                    ;plus or minus symbol
  620. tokenSlash                        EQU        29
  621. tokenBackSlash                    EQU        30
  622. tokenLess                        EQU        31                    ;less than symbol
  623. tokenGreat                        EQU        32                    ;greater than symbol
  624. tokenEqual                        EQU        33
  625. tokenLessEqual2                    EQU        34                    ;less than or equal, 2 characters (e.g. <=)
  626. tokenLessEqual1                    EQU        35                    ;less than or equal, 1 character
  627. tokenGreatEqual2                EQU        36                    ;greater than or equal, 2 characters (e.g. >=)
  628. tokenGreatEqual1                EQU        37                    ;greater than or equal, 1 character
  629. token2Equal                        EQU        38                    ;double equal (e.g. ==)
  630. tokenColonEqual                    EQU        39                    ;colon equal
  631.  
  632. tokenNotEqual                    EQU        40                    ;not equal, 1 character
  633. tokenLessGreat                    EQU        41                    ;less/greater, Pascal not equal (e.g. <>)
  634. tokenExclamEqual                EQU        42                    ;exclamation equal, C not equal (e.g. !=)
  635. tokenExclam                        EQU        43                    ;exclamation point
  636. tokenTilde                        EQU        44                    ;centered tilde
  637. tokenComma                        EQU        45
  638. tokenPeriod                        EQU        46
  639. tokenLeft2Quote                    EQU        47                    ;open double quote
  640. tokenRight2Quote                EQU        48                    ;close double quote
  641. tokenLeft1Quote                    EQU        49                    ;open single quote
  642. tokenRight1Quote                EQU        50                    ;close single quote
  643. token2Quote                        EQU        51                    ;double quote
  644. token1Quote                        EQU        52                    ;single quote
  645. tokenSemicolon                    EQU        53
  646. tokenPercent                    EQU        54
  647. tokenCaret                        EQU        55
  648. tokenUnderline                    EQU        56
  649. tokenAmpersand                    EQU        57
  650. tokenAtSign                        EQU        58
  651. tokenBar                        EQU        59                    ;vertical bar
  652.  
  653. tokenQuestion                    EQU        60
  654. tokenPi                            EQU        61                    ;lower-case pi
  655. tokenRoot                        EQU        62                    ;square root symbol
  656. tokenSigma                        EQU        63                    ;capital sigma
  657. tokenIntegral                    EQU        64                    ;integral sign
  658. tokenMicro                        EQU        65
  659. tokenCapPi                        EQU        66                    ;capital pi
  660. tokenInfinity                    EQU        67
  661. tokenColon                        EQU        68
  662. tokenHash                        EQU        69                    ;e.g. #
  663. tokenDollar                        EQU        70
  664. tokenNoBreakSpace                EQU        71                    ;non-breaking space
  665. tokenFraction                    EQU        72
  666. tokenIntlCurrency                EQU        73
  667. tokenLeftSingGuillemet            EQU        74
  668. tokenRightSingGuillemet            EQU        75
  669. tokenPerThousand                EQU        76
  670. tokenEllipsis                    EQU        77
  671. tokenCenterDot                    EQU        78
  672. tokenNil                        EQU        127
  673.  
  674. delimPad                        EQU        -2
  675. ; obsolete, misspelled token names kept for backward compatibility 
  676. tokenTilda                        EQU        44
  677. tokenCarat                        EQU        55
  678.  
  679. ; Table selectors for GetItlTable 
  680. smWordSelectTable                EQU        0                    ; get word select break table from 'itl2' 
  681. smWordWrapTable                    EQU        1                    ; get word wrap break table from 'itl2' 
  682. smNumberPartsTable                EQU        2                    ; get default number parts table from 'itl4' 
  683. smUnTokenTable                    EQU        3                    ; get unToken table from 'itl4' 
  684. smWhiteSpaceList                EQU        4                    ; get white space list from 'itl4' 
  685. iuWordSelectTable                EQU        0                    ; <obsolete>  get word select break table from 'itl2' 
  686. iuWordWrapTable                    EQU        1                    ; <obsolete>  get word wrap break table from 'itl2' 
  687. iuNumberPartsTable                EQU        2                    ; <obsolete>  get default number parts table from 'itl4' 
  688. iuUnTokenTable                    EQU        3                    ; <obsolete>  get unToken table from 'itl4' 
  689. iuWhiteSpaceList                EQU        4                    ; <obsolete>  get white space list from 'itl4' 
  690.  
  691. ; end of stuff moved from Packages.h 
  692. tokenOK                            EQU        0                    ; TokenResults 
  693. tokenOverflow                    EQU        1                    ; TokenResults 
  694. stringOverflow                    EQU        2                    ; TokenResults 
  695. badDelim                        EQU        3                    ; TokenResults 
  696. badEnding                        EQU        4                    ; TokenResults 
  697. crash                            EQU        5                    ; TokenResults 
  698.  
  699. TokenRec                 RECORD    0
  700. theToken                 ds.w    1
  701. position                 ds.l    1                                    ;pointer into original source
  702. length                     ds.l    1                                    ;length of text in original source
  703. stringPosition             ds.l    1                                    ;Pascal/C string copy of identifier
  704. sizeof                     EQU    14
  705.                         ENDR
  706.  
  707. TokenBlock                 RECORD    0
  708. source                     ds.l    1                                    ;pointer to stream of characters
  709. sourceLength             ds.l    1                                    ;length of source stream
  710. tokenList                 ds.l    1                                    ;pointer to array of tokens
  711. tokenLength                 ds.l    1                                    ;maximum length of TokenList
  712. tokenCount                 ds.l    1                                    ;number tokens generated by tokenizer
  713. stringList                 ds.l    1                                    ;pointer to stream of identifiers
  714. stringLength             ds.l    1                                    ;length of string list
  715. stringCount                 ds.l    1                                    ;number of bytes currently used
  716. doString                 ds.b    1                                    ;make strings & put into StringList
  717. doAppend                 ds.b    1                                    ;append to TokenList rather than replace
  718. doAlphanumeric             ds.b    1                                    ;identifiers may include numeric
  719. doNest                     ds.b    1                                    ;do comments nest?
  720. leftDelims                 ds.w    2
  721. rightDelims                 ds.w    2
  722. leftComment                 ds.w    4
  723. rightComment             ds.w    4
  724. escapeCode                 ds.w    1                                    ;escape symbol code
  725. decimalCode                 ds.w    1
  726. itlResource                 ds.l    1                                    ;handle to itl4 resource of current script
  727. reserved                 ds.l    8                                    ;must be zero!
  728. sizeof                     EQU    100
  729.                         ENDR
  730.  
  731.     IF GENERATING68K THEN
  732.         Macro
  733.         GetSysDirection
  734.             move.W $0BAC,(sp)
  735.         EndM
  736.     ELSE
  737.         IMPORT    GetSysDirection
  738.     ENDIF
  739.  
  740.     IF GENERATING68K THEN
  741.         Macro
  742.         SetSysDirection
  743.             move.W (sp)+,$0BAC
  744.         EndM
  745.     ELSE
  746.         IMPORT    SetSysDirection
  747.     ENDIF
  748.  
  749.     IF GENERATING68K THEN
  750.         Macro
  751.         _FontScript
  752.             dc.w     $2F3C
  753.             dc.w     $8200
  754.             dc.w     $0000
  755.             dc.w     $A8B5
  756.         EndM
  757.     ELSE
  758.         IMPORT    FontScript
  759.     ENDIF
  760.  
  761.     IF GENERATING68K THEN
  762.         Macro
  763.         _IntlScript
  764.             dc.w     $2F3C
  765.             dc.w     $8200
  766.             dc.w     $0002
  767.             dc.w     $A8B5
  768.         EndM
  769.     ELSE
  770.         IMPORT    IntlScript
  771.     ENDIF
  772.  
  773.     IF GENERATING68K THEN
  774.         Macro
  775.         _KeyScript
  776.             dc.w     $2F3C
  777.             dc.w     $8002
  778.             dc.w     $0004
  779.             dc.w     $A8B5
  780.         EndM
  781.     ELSE
  782.         IMPORT    KeyScript
  783.     ENDIF
  784.  
  785.     IF GENERATING68K THEN
  786.         Macro
  787.         _CharByte
  788.             dc.w     $2F3C
  789.             dc.w     $8206
  790.             dc.w     $0010
  791.             dc.w     $A8B5
  792.         EndM
  793.     ELSE
  794.         IMPORT    CharByte
  795.     ENDIF
  796.  
  797.     IF GENERATING68K THEN
  798.         Macro
  799.         _CharType
  800.             dc.w     $2F3C
  801.             dc.w     $8206
  802.             dc.w     $0012
  803.             dc.w     $A8B5
  804.         EndM
  805.     ELSE
  806.         IMPORT    CharType
  807.     ENDIF
  808.  
  809.     IF GENERATING68K THEN
  810.         Macro
  811.         _IsCmdChar
  812.             dc.w     $2F3C
  813.             dc.w     $8206
  814.             dc.w     $FFD0
  815.             dc.w     $A8B5
  816.         EndM
  817.     ELSE
  818.         IMPORT    IsCmdChar
  819.     ENDIF
  820.  
  821.     IF GENERATING68K THEN
  822.         Macro
  823.         _Transliterate
  824.             dc.w     $2F3C
  825.             dc.w     $820E
  826.             dc.w     $0018
  827.             dc.w     $A8B5
  828.         EndM
  829.     ELSE
  830.         IMPORT    Transliterate
  831.     ENDIF
  832.  
  833.     IF GENERATING68K THEN
  834.         Macro
  835.         _ParseTable
  836.             dc.w     $2F3C
  837.             dc.w     $8204
  838.             dc.w     $0022
  839.             dc.w     $A8B5
  840.         EndM
  841.     ELSE
  842.         IMPORT    ParseTable
  843.     ENDIF
  844.  
  845.     IF GENERATING68K THEN
  846.         Macro
  847.         _IntlTokenize
  848.             dc.w     $2F3C
  849.             dc.w     $8204
  850.             dc.w     $FFFA
  851.             dc.w     $A8B5
  852.         EndM
  853.     ELSE
  854.         IMPORT    IntlTokenize
  855.     ENDIF
  856.  
  857.     IF GENERATING68K THEN
  858.         Macro
  859.         _FontToScript
  860.             dc.w     $2F3C
  861.             dc.w     $8202
  862.             dc.w     $0006
  863.             dc.w     $A8B5
  864.         EndM
  865.     ELSE
  866.         IMPORT    FontToScript
  867.     ENDIF
  868.  
  869.     IF GENERATING68K THEN
  870.         Macro
  871.         _GetScriptManagerVariable
  872.             dc.w     $2F3C
  873.             dc.w     $8402
  874.             dc.w     $0008
  875.             dc.w     $A8B5
  876.         EndM
  877.     ELSE
  878.         IMPORT    GetScriptManagerVariable
  879.     ENDIF
  880.  
  881.     IF GENERATING68K THEN
  882.         Macro
  883.         _SetScriptManagerVariable
  884.             dc.w     $2F3C
  885.             dc.w     $8206
  886.             dc.w     $000A
  887.             dc.w     $A8B5
  888.         EndM
  889.     ELSE
  890.         IMPORT    SetScriptManagerVariable
  891.     ENDIF
  892.  
  893.     IF GENERATING68K THEN
  894.         Macro
  895.         _GetScriptVariable
  896.             dc.w     $2F3C
  897.             dc.w     $8404
  898.             dc.w     $000C
  899.             dc.w     $A8B5
  900.         EndM
  901.     ELSE
  902.         IMPORT    GetScriptVariable
  903.     ENDIF
  904.  
  905.     IF GENERATING68K THEN
  906.         Macro
  907.         _GetScript
  908.             dc.w     $2F3C
  909.             dc.w     $8404
  910.             dc.w     $000C
  911.             dc.w     $A8B5
  912.         EndM
  913.     ELSE
  914.         IMPORT    GetScript
  915.     ENDIF
  916.  
  917.     IF GENERATING68K THEN
  918.         Macro
  919.         _SetScriptVariable
  920.             dc.w     $2F3C
  921.             dc.w     $8208
  922.             dc.w     $000E
  923.             dc.w     $A8B5
  924.         EndM
  925.     ELSE
  926.         IMPORT    SetScriptVariable
  927.     ENDIF
  928.  
  929.     IF GENERATING68K THEN
  930.         Macro
  931.         _SetScript
  932.             dc.w     $2F3C
  933.             dc.w     $8208
  934.             dc.w     $000E
  935.             dc.w     $A8B5
  936.         EndM
  937.     ELSE
  938.         IMPORT    SetScript
  939.     ENDIF
  940.  
  941. ;  New for 7.1  
  942.     IF GENERATING68K THEN
  943.         Macro
  944.         _GetScriptUtilityAddress
  945.             dc.w     $2F3C
  946.             dc.w     $C404
  947.             dc.w     $0038
  948.             dc.w     $A8B5
  949.         EndM
  950.     ELSE
  951.         IMPORT    GetScriptUtilityAddress
  952.     ENDIF
  953.  
  954.     IF GENERATING68K THEN
  955.         Macro
  956.         _SetScriptUtilityAddress
  957.             dc.w     $2F3C
  958.             dc.w     $C008
  959.             dc.w     $003A
  960.             dc.w     $A8B5
  961.         EndM
  962.     ELSE
  963.         IMPORT    SetScriptUtilityAddress
  964.     ENDIF
  965.  
  966.     IF GENERATING68K THEN
  967.         Macro
  968.         _GetScriptQDPatchAddress
  969.             dc.w     $2F3C
  970.             dc.w     $C406
  971.             dc.w     $003C
  972.             dc.w     $A8B5
  973.         EndM
  974.     ELSE
  975.         IMPORT    GetScriptQDPatchAddress
  976.     ENDIF
  977.  
  978.     IF GENERATING68K THEN
  979.         Macro
  980.         _SetScriptQDPatchAddress
  981.             dc.w     $2F3C
  982.             dc.w     $C00A
  983.             dc.w     $003E
  984.             dc.w     $A8B5
  985.         EndM
  986.     ELSE
  987.         IMPORT    SetScriptQDPatchAddress
  988.     ENDIF
  989.  
  990.     IF GENERATING68K THEN
  991.         Macro
  992.         _CharacterByteType
  993.             dc.w     $2F3C
  994.             dc.w     $C206
  995.             dc.w     $0010
  996.             dc.w     $A8B5
  997.         EndM
  998.     ELSE
  999.         IMPORT    CharacterByteType
  1000.     ENDIF
  1001.  
  1002.     IF GENERATING68K THEN
  1003.         Macro
  1004.         _CharacterType
  1005.             dc.w     $2F3C
  1006.             dc.w     $C206
  1007.             dc.w     $0012
  1008.             dc.w     $A8B5
  1009.         EndM
  1010.     ELSE
  1011.         IMPORT    CharacterType
  1012.     ENDIF
  1013.  
  1014.     IF GENERATING68K THEN
  1015.         Macro
  1016.         _TransliterateText
  1017.             dc.w     $2F3C
  1018.             dc.w     $C20E
  1019.             dc.w     $0018
  1020.             dc.w     $A8B5
  1021.         EndM
  1022.     ELSE
  1023.         IMPORT    TransliterateText
  1024.     ENDIF
  1025.  
  1026.     IF GENERATING68K THEN
  1027.         Macro
  1028.         _FillParseTable
  1029.             dc.w     $2F3C
  1030.             dc.w     $C204
  1031.             dc.w     $0022
  1032.             dc.w     $A8B5
  1033.         EndM
  1034.     ELSE
  1035.         IMPORT    FillParseTable
  1036.     ENDIF
  1037.  
  1038. ; Moved from Packages.h 
  1039.     IF GENERATING68K THEN
  1040.         Macro
  1041.         _GetIntlResource
  1042.             move.w    #$0006,-(sp)
  1043.             dc.w     $A9ED
  1044.         EndM
  1045.     ELSE
  1046.         IMPORT    GetIntlResource
  1047.     ENDIF
  1048.  
  1049.     IF GENERATING68K THEN
  1050.         Macro
  1051.         _SetIntlResource
  1052.             move.w    #$0008,-(sp)
  1053.             dc.w     $A9ED
  1054.         EndM
  1055.     ELSE
  1056.         IMPORT    SetIntlResource
  1057.     ENDIF
  1058.  
  1059.     IF GENERATING68K THEN
  1060.         Macro
  1061.         _ClearIntlResourceCache
  1062.             move.w    #$0018,-(sp)
  1063.             dc.w     $A9ED
  1064.         EndM
  1065.     ELSE
  1066.         IMPORT    ClearIntlResourceCache
  1067.     ENDIF
  1068.  
  1069.     IF GENERATING68K THEN
  1070.         Macro
  1071.         _GetIntlResourceTable
  1072.             move.w    #$0024,-(sp)
  1073.             dc.w     $A9ED
  1074.         EndM
  1075.     ELSE
  1076.         IMPORT    GetIntlResourceTable
  1077.     ENDIF
  1078.  
  1079.     IF OLDROUTINENAMES  THEN
  1080.     ENDIF
  1081.     ENDIF ; __SCRIPT__
  1082.